#pragma once

/*	File:	Scene.h
 *	
 *	Every state of the game exists as a scene. This is like Cocos2D (which is awesome).
 *	Examples include: Title, inGame, Paused, about, Stage Select...
 *	
 *  Has-A: UI_Manager, World_Manager, Menu_Manager, Sound_Manager
 */
#include "precompiled.h"

class World_Manager;
class Sound_Manager;

typedef enum SceneType{
	Menu, InGame, Paused
};

class Scene
{
public:
	Scene(void);
	Scene( SceneType type );
	~Scene(void);

	void setUI( /*An object describing a UI set to apply. */ );
	void setWorldStage( /*An object describing what to load and transform.*/ );

	void Update( GLdouble time );
	void SubmitToFrame( glm::mat4 &projview );

	World_Manager* worldMan;
	//auto_ptr<Sound_Manager> soundMan;

private:

	SceneType sceneType;
};

